Modern electrical devices usually include one or more processors (also referred to as cores). Multi-processor devices, such as but not limited to systems on chips, include multiple memory units. The memory units usually include level-one cache units, level-two cache units, external memories and the like. Level-one cache units are usually dedicated to a single processor while higher-level cache units, such as high-level cache units are shared between multiple processors.
Various prior art multiple level cache units and methods for retrieving information from cache units are known in the art. The following U.S. patents and patent applications, all being incorporated herein by reference, provide an illustration of some of the prior art methods and devices:
U.S. Pat. No. 6,119,202 of Borkenhagen et al.; U.S. Pat. No. 6,795,078 of Lavelle et al.; U.S. Pat. No. 5,276,848 of Gallagher et al.; U.S. Pat. No. 5,752,264 of Blake et al.; U.S. Pat. No. 6,751,706 of Chauvel et al.; U.S. Pat. No. 6,745,293 of Lasserre et al.; U.S. Pat. No. 6,591,345 of Seznec; U.S. patent application publication serial number 2003142101 of Lavelle et al.; and U.S. patent application publication serial number 2004230745 of Navarro.
Modern devices are required to complete more complex tasks in less time then their predecessors. In many devices the number of processors was increased in order to cope with these requirements. This increment forces designers to design efficient information retrieval methods and devices.
The design process of modern integrated circuits is more complex then older generation design process. On the other hand, the design process period should be shortened in response to previous design process periods. In order to meet those two virtually contradicting demands there is a need to re-use as many designed components as possible.
Thus, there is a need to provide a multi-port cache unit that can be easily adapted to different environments, while re-using as many components as possible.